package map;

import java.util.HashMap;
import java.util.Map;

public class map {
    public static void main(String[] args) {
        String line="i love java! thinking in java!! hello world!";
        /**
         * 思路：
         * 1.遍历字符串中每一个字符：
         * char charAt(int index)
         * 2.创建一个Map
         * key:出现的字符
         * value：该字符出现的次数
         *
         * 每当获取一个字符后，先判断该字符作为key在map中是否存在
         * 如果不存在：说明第一次出现，那么存入时对应的次数为1
         * 如果存在：说明该字符出现过，将该字符对应的次数取出来并+1，然后
         *          在放回去
         *
         * */
        Map<Character,Integer> map = new HashMap<>();
        for (int i =0;i<line.length();i++){
            char c=line.charAt(i);

            if (map.containsKey(c)){
                int count =map.get(c);
                count+=1;
                map.put(c,count);

            }else {
                map.put(c,1);
            }
        }
        System.out.println(map);

        map.forEach((k,v)-> System.out.println(k+"-->"+v));




    }
}
